//package org.liuyunfeng.web;
//
//import lombok.Getter;
//import lombok.Setter;
//import lombok.experimental.Accessors;
//import org.springframework.web.bind.annotation.GetMapping;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RestController;
//
//import java.io.IOException;
//import java.io.InputStream;
//import java.util.ArrayList;
//import java.util.Collections;
//import java.util.List;
//import java.util.Objects;
//import java.util.stream.Collectors;
//
///**
// * @description:
// * @author: TanJingyu
// * @create: 2022-04-28 17:25
// **/
//@RestController
//@RequestMapping("/xmType")
//public class XmTypesController {
//
//    @GetMapping("/types")
//    public Object types() throws IOException {
//        List<String> list = Collections.emptyList();
//
//        try(InputStream ins = this.getClass().getClassLoader().getResourceAsStream("json/xmType.txt")) {
//            if (Objects.nonNull(ins)) {
//                list = IOUtils.readLines(ins, "utf-8");
//            }
//        }
//
//
//        List<Type> types = list.stream().map(str -> {
//            String[] strings = str.trim().split(":");
//            return new Type().setName(strings[1]).setValue(Integer.parseInt(strings[0]));
//        }).collect(Collectors.toList());
//
//        List<Type> fathers = types.stream().filter(item -> item.getValue() % 100 == 0).collect(Collectors.toList());
//
//        return fathers.stream().peek(item -> {
//            Integer value = item.getValue() / 100;
//            ArrayList<Type> objects = new ArrayList<>();
//            objects.add(new Type().setName("全部").setValue(item.getValue()));
//            for (Type type : types) {
//                if (type.getValue() / 100 == value && !type.getValue().equals(item.getValue())) {
//                    objects.add(type);
//                }
//            }
//            item.setChildren(objects);
//            item.setValue(null);
//        }).collect(Collectors.toList());
//    }
//    @Getter
//    @Setter
//    @Accessors(chain = true)
//    private static class Type {
//        private String name;
//        private Integer value;
//        private List<Type> children;
//    }
//}
//
//